package com.asistencia.DAO.utils;

import java.util.List;
/**
 * 
 * @author rfarias
 * 
 * Tiene como fin ayudar en la codificación 
 * mediante el pre-establecimiento de los 
 * métodos mas frecuentes de acceso a datos
 * 
 */
public interface InterfaceDAO{
    /**
     *   
     * @return List 
     * 
     * Devuelve todos los registros
     */
    public List findAll();
    
    /**
     * 
     * @param id
     * @return Object 
     * 
     * Devuelve un unico objeto determinado por su identificado en la BD
     */
    public Object searchById(String id);
    
    /**
     * 
     * @param obj
     * @return Object (el objeto actualizado)
     * 
     * Actualiza el objeto de datos
     */
    public Object update(Object obj);
    /**
     * 
     * @param obj 
     * @return Object (el nuevo objeto agregado a  la BD)
     * 
     * INserta un nuevo objeto de datos 
     */
    public Object insert(Object obj);
    
    /**
     * 
     * @param obj
     * @return boolean
     * 
     * Elimina un objeto de datos.
     */
    public boolean delete(Object obj);
}
